package ferrovias.prueba;


import java.util.ArrayList;

import ferrovias.clases.*;

public class Prueba {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		/*Hora hora=new Hora(15,22);
		System.out.println(hora);
		hora.sumarMinutos(17);
		System.out.println(hora);
		hora.sumarMinutos(17);
		System.out.println(hora);
		hora.sumarMinutos(17);
		System.out.println(hora);
		hora.sumarMinutos(180);
		System.out.println(hora);
		hora.sumarMinutos(180);
		System.out.println(hora);
		hora.sumarMinutos(90);
		System.out.println(hora);
		hora.sumarMinutos(11);
		System.out.println(hora);
		hora.sumarMinutos(11);
		System.out.println(hora);
		
		TrenRetiroBoulogne tren=new TrenRetiroVillarosa(new Hora(21,29),0);
		Hora[] horas=tren.getHoraEstaciones();
		/*for(int x=0;x<horas.length;x++){
			if(horas[x]!=null){
				System.out.print(x);
				System.out.print("-");
				System.out.println(horas[x]);
			}
			
		}
		
		TrenGrandbourgRetiro tren2=new TrenGrandbourgRetiro(new Hora(8,14), 2);
		horas=tren2.getHoraEstaciones();
		for(int x=horas.length-1;x>=0;x--){
			if(horas[x]!=null){
				System.out.print(x);
				System.out.print("-");
				System.out.println(horas[x]);
			}
			
		}*/
		
		Ferrovias ferrovias=new Ferrovias();
		ArrayList<TrenBelgranoNorte> lista=ferrovias.buscarTren(14, 0, new Hora(9,0), new Hora(11,0),0);
		for(TrenBelgranoNorte t:lista){
			System.out.print(t.getNumero());
			System.out.print("-");
			System.out.println(t.getHoraEstaciones()[14].toString()+" "+t.getHoraEstaciones()[0].toString());
		}
		
		lista=ferrovias.getTrenesQueEstanALaHora(new Hora(15,0), 0);
		for(TrenBelgranoNorte t:lista){
			System.out.println(t.getNumero());
			
		}
		
		lista=ferrovias.getLvTrenesARetiro();
		exportar(lista,"lvTrenesARetiro");
		lista=ferrovias.getLvTrenesAVillaRosa();
		exportar(lista,"lvTrenesAVillaRosa");
	}

	private static void exportar(ArrayList<TrenBelgranoNorte> lista,String nombreLista) {
		for(TrenBelgranoNorte t:lista){
			StringBuffer sb=new StringBuffer();
			//ArrayList<Hora> horas=new ArrayList<Hora>();
			sb.append("Hora[] horas=new Hora[21];\n");
			for(int x=0;x<21;x++){
				Hora h=t.getHoraEstaciones()[x];
				if(h!=null){
					sb.append("horas[");
					sb.append(String.valueOf(x));
					sb.append("]=new Hora(");
					sb.append(String.valueOf(h.getHora()));
					sb.append(",");
					sb.append(String.valueOf(h.getMinuto()));
					sb.append(");\n");
				}
			}
			sb.append(nombreLista);
			sb.append(".add(new TrenBelgranoNorte(");
			sb.append(String.valueOf(t.estacionPartida()));
			sb.append(",");
			sb.append(String.valueOf(t.estacionPartida()));
			sb.append(",");
			sb.append("horas));\n");
			System.out.println(sb.toString());
		}
	}
	

}
